package modelo.bo.cmd.grupo;

import java.io.IOException;
import java.sql.SQLException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import modelo.bo.cmd.Acao;
import modelo.bo.cmd.EICommand;
import modelo.dao.impl.GrupoImpl;
import modelo.dao.util.ConexaoMySQL;
import modelo.dto.EEntidade;
import modelo.dto.Grupo;

public class AtualizarGrupo extends Acao {
	private Grupo grupo;
	
	public AtualizarGrupo() {
		this.grupo = new Grupo();
	}
	
	@Override
	public void init(HttpServletRequest request) {
		super.pagina = String.format("/contato/agenda.do?entidade=%s&cmd=%s", EEntidade.GRUPO, EICommand.LISTAR);
		
		this.grupo.setCodigo(Integer.parseInt(request.getParameter("id")));
		this.grupo.setNomeGrupo(request.getParameter("nomeGrupo"));
		
	}

	@Override
	public boolean executar(HttpServletRequest request, HttpServletResponse response) throws IOException {
		super.msg = String.format("Grupo \" %s \" atualizado com sucesso.", this.grupo.getNomeGrupo());
			
				
		try {								
			if(!this.grupo.getNomeGrupo().isEmpty()) {
				GrupoImpl gi = new GrupoImpl(ConexaoMySQL.getConnection());
				
				if(gi.atualizar(this.grupo)) {
					request.setAttribute("msg", super.msg);					
				}

			}
			else{
				super.msg = "Preencha o campo Grupo";
				request.setAttribute("msg", super.msg);				
			}
						
		}
		catch (SQLException e) {
			e.printStackTrace();
			super.msg = "\n Erro ao tentar alterar grupo. \n";
			request.setAttribute("msg", msg+e.getMessage());				
		}
		
		return super.efetuou;	}

	@Override
	public String retornaPagina() {
		return super.pagina;
	}

}
